哼哈二将:压缩上下文 + AI 自分析自成长循环
项目异常复杂、代码特别多之后,怎么让 AI 快速切入并保持改得对?AI 工具都在卷长上下文,但除了靠工具升级,更重要的是平时养成良好的开发习惯:把文档落地、把开发统计和追踪固化成 Skill 或定时任务——不用经常做,但要让机制替你做。本节讲两件武器:"哼哈二将"——tidy(压缩上下文)+ daydayup(自分析自成长循环),两者都已在课程仓库 ai-chat-ui 里真实落地(根目录
ai-chat-ui/.claude/skills/下可查)。
先说选型:Brian 的记忆工具踩坑史
在讲两个 Skill 之前,先把"为什么需要它们"的选型过程讲清楚——这段踩坑史本身就是方法论。
| 工具 | 体验 | 结论 |
|---|---|---|
| claude-mem(5-03 详讲过) | 记忆类项目,自动监听对话记录观察 | 记忆有价值,但大量占用上下文,用着用着就弃用了 |
| agent memory | 插件形态,观测/记忆/行动图 | 用了一段时间;对本地配置有要求——Mac 能跑 Ollama + 几个 Docker 容器没问题,Windows 上内存/CPU/GPU 吃紧,整体卡顿;解法是云端方案或云端向量数据库 |
| tidy + daydayup | 轻量 Skill,零常驻开销 | 本节主角 |
Brian 换方案的动因有三条,逐条对应 claude-mem 的痛点:
- claude-mem 占用大量上下文;
- 让 AI 优化上下文时发现:长项目无法做到极致压缩;
- 无法跨项目、跨会话的消息联动。
更进一步的方法论:我们很多时候是先碰到问题,再去思考解决方案。以前搜索时代,很多技术方案没办法评估;有了 AI 之后,结合搜索可以快速筛选出适合当下的方案——这就是 18-01 的"搜索 + AI"用在自身工具链上。
与其他章分工:claude-mem 的机制详解在 5-03,本章只讲选型结论;loop/ralph-loop 机制详见 8-04,本章只引用。
武器一:tidy —— 垃圾清理 + 上下文收敛 + 记忆压缩
创建:一段提示词,让 AI 边搜索边落地
创建方式和 18-01 同一个思路——不是自己从零写,而是丢一段提示词让 AI 创建,并且让它结合网络搜索,借鉴开源项目里同类工具的精华(这是前面几章反复强调的习惯):
在当前项目根目录创建一个 tidy skill:
清理项目与 ~/.claude 中的垃圾文件、收敛常驻上下文、压缩各 CLI 的记忆与会话数据。
安全红线:永不删除 .git、.env、node_modules;删除只用明确路径,禁止 glob 扫射,
禁止 rm -rf;B 级目标必须列清单获确认。
先搜索 GitHub 上同类清理工具的优秀实现,借鉴其中精华再落地。
text
落地结构:四种模式路由
创建过程跳过,看最终形态。tidy/SKILL.md 只有三十几行——详细规则不常驻,用到才读外置规则文件,这本身就是一种上下文压缩实践:
| 模式 | 触发 | 动作 |
|---|---|---|
| 清理+审计(默认) | /tidy | 读 rules/cleanup-rules.md → 跑 scripts/scan.sh → A 级直删 → B 级列清单等确认 → 接上下文审计出迁移方案 |
| 只扫描 | /tidy scan | 只跑 scan.sh 出报告,不删任何文件 |
| 仅上下文收敛 | /tidy context | 审计常驻长文(CLAUDE.md/rules/AGENTS.md)里的废弃正文、任务型内容,出迁移方案确认后执行 |
| 记忆压缩 | /tidy memory | 压缩/清理 Claude、claude-mem、Codex 等各 CLI 的记忆与会话数据 |
安全红线(任何模式不可违反):永不删除 .git、.env*、node_modules、~/.claude/{plugins,skills,memory,settings*};删除只用明确路径,禁止 glob 扫射;rm -rf 目标必须与扫描报告逐字一致;scan.sh 永远只读。
执行演示一:清理垃圾
在项目根目录执行 /tidy,实测行为:
- 一次性扫描出全局
~/.claude里的很多垃圾(telemetry、shell-snapshots、paste-cache、旧会话等); - 可以约束这个技能的扫描范围(比如本次会话不扫、不删,会话保留备份);
- 列清单让你逐项勾选:这个可以删、这个没必要删——按你选择的删除,A 级直删、B 级确认;
- 对整个项目做了一次"减肥"。
执行演示二:上下文压缩,一次压掉 9.7K
当前项目"看起来没什么可压的"?直接问它"为什么没有对上下文进行分析与压缩,包括 rules 的部分"——它重新扫描,立刻找出大量上下文层面的东西:废弃正文、任务型规范、临时文件约束等。
处理方式:勾选"废弃正文 → 全局 playbook 承接任务型内容"、"临时文件压缩 → 工作流外置",回车执行。结果:压缩了 9.7K 字节——相当于每次会话都少带一大段死上下文。每个会话都省,累积收益很可观。
注意:如果你当前项目本来就不复杂,扫描不出东西是正常的——去找一个复杂项目看效果。
武器二:daydayup —— 夜间自分析自成长循环
为什么放夜间跑
很多 AI 订阅(coding plan)夜间更便宜,或者夜间额度更多;白天不适合跑这种闲置任务。所以把项目自思考、工具自思考这类任务全部丢到夜间循环去跑,白天的额度留给正经开发。
四句提示词创建整个机制
1. 组建一个多 agent 团队——既能执行复杂任务,成员之间也可以互相讨论和通信。
2. 讨论一下当前项目中可能存在的问题和待优化的地方(性能优化点、潜在缺陷、
缺失的单元测试/集成测试等,可以按你的项目具体化)。
3. 结合 AGENTS.md(没有就创建),看看项目中有哪些可以沉淀为技能(skill)
或规则(rule)的实践经验;创建一个叫 daydayup 的技能,既可以主动执行,
也可以由 loop 自动执行。
4. 创建自我更新与成长的循环:每天夜间定时执行并讨论,形成文档输出到 docs 目录。
text
创建过程中 AI 可能会调用本地的 brainstorming skill(8-03 讲过)来跟你讨论——顺着它的讨论一步一步选,朝你想要的目标把这个 skill 或 loop 建出来就行。
落地结构:三轴并行 + 对抗复核
真实落地的 daydayup skill 核心设计:
- 三轴并行审查:一条消息并行发 3 个只读 subagent——arch(架构与代码健康)、quality(质量与流程)、curator(知识沉淀),每个 subagent 的 prompt 必须带三条纪律:全程只读、证据落到 文件:行号、硬预算超限中止;
- 对抗复核:主线逐条过三路发现——去重、降级无证据项、与历史指纹比对(重复发现不重复报告);
- 沉淀决策(人工闸门):低风险知识资产(日报本身)直接落地;行为契约(规则/AGENTS.md/新 skill)只出建议 diff、等用户确认——夜间无人值守红线:禁止改业务代码、禁止发版、禁止 push;
- 防空转纪律:某轴无变更面就标"本期无变更"不重扫;全轴零新发现写静默期日报收场,不凑数不硬挖。
执行效果演示
跑完一期,输出团队讨论核心结论:三路 agent + 主线复合,发现问题分 P0/P1 级别。实测它抓到的 P0 问题示例:发布物里包含完整的 Vue 运行时——这个不建议,已发现问题列入行动清单。发现的问题等决策后由 AI 执行修复;已经输出过一期 MD 日报(docs/daydayup/ 下),可以反复执行迭代。
已知平台约束(仓库实测):recurring 定时任务 7 天自动过期(到期最后跑一次后删除,需续期);只在 Claude Code 会话运行且空闲时触发;机器休眠不跑。所以夜间循环更适合"睡前挂机"场景。
背景:Claude Code 官方压缩机制现状(2026)
tidy 压的是磁盘上的常驻上下文(规则/记忆/过程文件),而工具自己也在卷会话内压缩,了解它有助于分清边界:
/compact手动压缩:把历史会话总结成摘要后继续,摘要之外的细节会丢;- auto-compact 自动触发:接近上下文上限时自动跑一轮压缩,阈值可调;
- microcompact:后台自动清理旧工具结果(工具输出占上下文大头),不打断工作流;
- 更深一层还有 session memory compact(用后台维护的会话摘要代替全量 LLM 总结)等多级 fallback(来源:Claude Code 源码分析文章与官方文档,DeepWiki/anthropics/claude-code "Context Window & Compaction")。
一句话分界:官方压缩管会话内历史,tidy 管磁盘上的规则与记忆,daydayup 管知识的沉淀方向。三者叠加才是完整的上下文治理。
本节小结
- 记忆工具选型的结论不是"哪个最好",而是先碰问题再找方案:claude-mem 占上下文 → agent memory 要本地算力 → 最后收敛到"轻量 Skill + 机制化习惯"。
- tidy 的价值不在删除文件本身,而在把"任务型规范外置到 skill 按需加载"——一次压缩 9.7K 字节常驻上下文,每个会话都受益。
- daydayup 把"项目自评审 + 知识沉淀"做成循环机制:三轴并行只读审查 + 对抗复核 + 人工闸门 + 防空转纪律,夜间便宜时段跑。
- 官方 auto-compact/microcompact 管会话内历史;磁盘上的常驻上下文要靠 tidy 这类机制自己治理。
- 本节两个 skill 都是"提示词创建 + AI 搜索借鉴开源精华"的方式落地的——机制用机制的方式养自己,这正是"自分析自成长"的字面意思。
↑